package com.kingyun.gpsinspection.purificationservice.facade.service.tdm;

import com.kingyun.gpsinspection.purificationservice.facade.model.activiti.HistoricNode;
import com.kingyun.gpsinspection.purificationservice.facade.model.jsm.EmployeeVo;
import com.kingyun.gpsinspection.purificationservice.facade.model.tdm.Problem;
import com.kingyun.gpsinspection.purificationservice.facade.model.tdm.WorkOrderVo;

import java.util.List;

/**
 * Created by jiangjx on 2017/6/10.
 */
public interface NewProblemService {
    /**
     * 发起问题流程
     *
     * @param employeeVo   当前登录人信息
     * @param problem      问题信息
     * @param uploadFiles  上传附件
     * @param deletedFiles 删除附件
     * @return
     */
    int save(EmployeeVo employeeVo, Problem problem, String uploadFiles, String deletedFiles);

    /**
     * 流程下一步
     *
     * @param radioVal        流程变量
     * @param approvalOpinion 审批意见
     * @param employeeVo      登录人信息
     * @param workOrderList   工单list
     * @param problemId       问题id
     * @param taskId          任务id
     */
    int approvalStep(EmployeeVo employeeVo, String radioVal, String approvalOpinion, List<WorkOrderVo> workOrderList, String problemId, String taskId, String nodeName);

    /**
     * 问题验收
     *
     * @param solveVal     流程变量
     * @param solveOpinion 审批意见
     * @param employeeVo   登录人信息
     * @param problemId    问题id
     * @param taskId       任务id
     */
    int solveStep(EmployeeVo employeeVo, String solveVal, String solveOpinion, String problemId, String taskId, String ids, String nodeName);


    /**
     * 查询历史审批记录
     */

    List<HistoricNode> queryApprovalRecords(String businessId);
}
